#ifndef TERRITORY_H_
#define TERRITORY_H_

#include<vector>
#include<QString>

class Player;

using namespace std;

class Territory
{
public:
	Territory();
	virtual ~Territory();

        void setPlayer(Player* player) {m_player = player;}
        void addStrength() {++m_strength;}
        void minusStrength() {--m_strength;}
        void setStrength(int strength) {m_strength = strength;}
	void addNeighbor(Territory* neighbor);

        //accessor methods
        Player* getPlayer() {return m_player;}
        int getStrength() {return m_strength;}
        QString getName() {return m_name;}
        void setName(QString name) {m_name = name;}
        bool isNeighbor(Territory* territory);

private:
	Player*				m_player;
        int				m_strength;
        vector<Territory*>              m_neighbors;
        QString                         m_name;
};

#endif /* TERRITORY_H_ */
